package com.cwj.mylibrary;

import android.content.ClipData;
import android.content.ClipboardManager;
import android.content.Context;
import android.widget.Toast;

/**
 * Created by cwj on 2023-5-4.
 * <p>
 * Description:复制和粘贴
 */
public class CopyAndPaste {

    /**
     * 复制
     *
     * @param context 上下文
     * @param text    复制内容
     */
    public static void copyClieck(Context context, String text) {
        if ("".equals(text.trim())) {
            Toast.makeText(context, "复制内容为空", Toast.LENGTH_SHORT).show();
        } else {
            // 获取系统剪贴板
            ClipboardManager clipboard = (ClipboardManager) context.getSystemService(Context.CLIPBOARD_SERVICE);

            // 创建一个剪贴数据集，包含一个普通文本数据条目（需要复制的数据）
            ClipData clipData = ClipData.newPlainText(null, text);

            // 把数据集设置（复制）到剪贴板
            clipboard.setPrimaryClip(clipData);

            Toast.makeText(context, "复制成功", Toast.LENGTH_SHORT).show();
        }
    }

    /**
     * 粘贴
     *
     * @param context 上下文
     * @return 返回粘贴板的第一条数据
     */
    public static String pasteClieck(Context context) {
        String text = "";
        // 获取系统剪贴板
        ClipboardManager clipboard = (ClipboardManager) context.getSystemService(Context.CLIPBOARD_SERVICE);
        // 获取剪贴板的剪贴数据集
        ClipData clipData = clipboard.getPrimaryClip();

        if (clipData != null && clipData.getItemCount() > 0) {
            // 从数据集中获取（粘贴）第一条文本数据
            text = String.valueOf(clipData.getItemAt(0).getText());
        }
        return text;
    }
}